Show the icon window back after changing pixbuf
authorPascal Terjan <pascal.terjan@free.fr>
Sun, 30 Aug 2009 00:27:23 +0000 (20:27 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 30 Aug 2009 00:27:23 +0000 (20:27 -0400)
Otherwise, there is no way to get icons to show again after calling
_clear() once. Reported in bug 593135.

gtk/gtkentry.c

index 246f34326dd61910c917f0c9bf9726db0c375af5..7bf5c293966cb713fc6ce98b33fbe0c63d297d3f 100644 (file)
@@ -2656,9 +2656,6 @@ construct_icon_info (GtkWidget            *widget,
   if (GTK_WIDGET_REALIZED (widget))
     realize_icon_info (widget, icon_pos);
 
-  if (GTK_WIDGET_MAPPED (widget))
-    gdk_window_show_unraised (icon_info->window);
-
   return icon_info;
 }
 
@@ -7536,6 +7533,9 @@ gtk_entry_set_icon_from_pixbuf (GtkEntry             *entry,
           g_object_notify (G_OBJECT (entry), "secondary-icon-pixbuf");
           g_object_notify (G_OBJECT (entry), "secondary-icon-storage-type");
         }
+
+      if (GTK_WIDGET_MAPPED (entry))
+          gdk_window_show_unraised (icon_info->window);
     }
 
   gtk_entry_ensure_pixbuf (entry, icon_pos);
@@ -7600,6 +7600,9 @@ gtk_entry_set_icon_from_stock (GtkEntry             *entry,
           g_object_notify (G_OBJECT (entry), "secondary-icon-stock");
           g_object_notify (G_OBJECT (entry), "secondary-icon-storage-type");
         }
+
+      if (GTK_WIDGET_MAPPED (entry))
+          gdk_window_show_unraised (icon_info->window);
     }
 
   gtk_entry_ensure_pixbuf (entry, icon_pos);
@@ -7667,6 +7670,9 @@ gtk_entry_set_icon_from_icon_name (GtkEntry             *entry,
           g_object_notify (G_OBJECT (entry), "secondary-icon-name");
           g_object_notify (G_OBJECT (entry), "secondary-icon-storage-type");
         }
+
+      if (GTK_WIDGET_MAPPED (entry))
+          gdk_window_show_unraised (icon_info->window);
     }
 
   gtk_entry_ensure_pixbuf (entry, icon_pos);
@@ -7731,6 +7737,9 @@ gtk_entry_set_icon_from_gicon (GtkEntry             *entry,
           g_object_notify (G_OBJECT (entry), "secondary-icon-gicon");
           g_object_notify (G_OBJECT (entry), "secondary-icon-storage-type");
         }
+
+      if (GTK_WIDGET_MAPPED (entry))
+          gdk_window_show_unraised (icon_info->window);
     }
 
   gtk_entry_ensure_pixbuf (entry, icon_pos);